package io.awen.modules.sign.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.awen.modules.sys.entity.SysUserEntity;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 车辆载重变化时产生一条记录
 (signCarLoadRecordEntity)实体类
 **/

@Data
@TableName("sign_car_load_record")
public class SignCarLoadRecordEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId
    private Long id;
    /**
     * 车辆id
     */
    private Long signCarId;
    /**
     * 单位id
     */
    private Long unitId;
    private Long period;
    /**
     * 车牌号
     */
    private String signCarNumberPlate;
    private String remark;

    /**
     * 载重变化时经度
     */
    private Double lon;
    /**
     * 载重变化时纬度
     */
    private Double lat;
    /**
     * 装卸状态（0：未完成，1：装货，2：卸货，3：无操作）
     */
    private Integer state;
    /**
     * 绑定状态（0：未绑定任务调度，1：已绑定任务调度）
     */
    private Integer bind;
    private Long containerId;
    private Long sinkId;
    private Integer count;
//    private Long count;
    private Double distance;

    /**
     * 开始的重量
     */
    private double startWeight;

    /**
     * 结束的重量
     */
    private double endWeight;
    private double loadStartWeight;
    private double loadEndWeight;
    private Date startTime;
    private Date endTime;
    private double endLon;
    private double endLat;

    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 删除标记(0:未删除，其他:已删除)
     */
    @TableLogic
    private Long deleteFlag;

    @TableField(exist = false)
    private SignCarEntity signCarEntity;

    @TableField(exist = false)
    private SysUserEntity userEntity;

    @TableField(exist = false)
    private SignContainerEntity signContainerEntity;

    @TableField(exist = false)
    private SignSinkEntity signSinkEntity;

    @TableField(exist = false)
    private SignFleetEntity signFleetEntity;

    @TableField(exist = false)
    private SignUnitEntity signUnitEntity;

    @TableField(exist = false)
    private SignVillageTownEntity signVillageTownEntity;

}
